Systems and methods for modifying the display of inputs on a user input device

ABSTRACT

Systems and methods are described for adapting a second user input device to resemble a first user input device while preserving new functionalities not available in the first user input device. The systems and methods may identify, based on identifiers of the first and second user input devices, a first and second set of device functionalities provided by the devices. The systems and methods may compare the sets of device functionalities to determine a set of common device functionalities and, in response, modify the display of an input of the second user input device to correspond to visual attributes of an input of the first user input device.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.15/938,341, filed Mar. 28, 2018 (now allowed), which is herebyincorporated by reference herein in its entirety.

BACKGROUND

As media systems have become more advanced and interactive, the varietyof media devices available to users has increased. Newer devices aredifferent than older devices in both device functionality as well asdevice interface design. Many of these newer devices provide touchscreencapabilities that allow users to input device commands. However, usersare often unfamiliar with the newer touchscreen input devices and do notknow how to use them.

SUMMARY

Touchscreen input devices may now have displays that visually resembleolder input devices that users are more familiar with. However, thefunctionalities available with newer touchscreen input devices farsurpass those available with older input devices (e.g., remotecontrols). Thus, a newer touchscreen input device simply mirroring anolder input device will result in a loss of functionality for users, asthe additional functionalities available to the newer device would belost. It would be advantageous to modify the display of only the inputsof the newer touchscreen input device that have a common devicefunctionality with the inputs of the older input device. This would aidusers unfamiliar with the new input device by presenting a moreaccessible interface to the user while preserving the improvedfunctionality of the new input device.

Accordingly, to overcome problems with user familiarity with a newerdevice while maintaining the improved functionality of the newer device,systems and methods are described herein for adapting a second userinput device to resemble a first user input device while preserving newfunctionalities not available in the first user input device.Specifically, a media guidance application may retrieve an identifier ofa first user input device associated with a first user equipment device,where the first user equipment device was previously associated with theuser. For example, the media guidance application may retrieve ahexadecimal code that identifies a remote control device associated witha set-top box, where the set-top box was previously associated with theuser.

The media guidance application may retrieve an identifier of a seconduser input device associated with a second user equipment device, wherethe second user equipment device has been newly associated with theuser, and where the second user input device comprises a display ofinputs for performing respective device functions. For example, themedia guidance application may retrieve a hexadecimal code thatidentifies a tablet computer device associated with a different set-topbox, where the different set-top box has been newly associated with theuser, and where the tablet computer device has a touchscreen display forinputs that enable user input to the different set-top box. Byretrieving identifiers of the first and second user input devices, themedia guidance application may retrieve additional attributes of theuser input devices that may facilitate the adaptation of the second userinput device to resemble the first user input device.

The media guidance application may identify, based on the firstidentifier and the second identifier, respectively, a first set ofdevice functionalities provided by the first user input device and asecond set of device functionalities provided by the second user inputdevice. For example, the media guidance application may identify, fromusing the hexadecimal code identifier of the remote control device, afirst set of device functionalities for the remote control device,including power, play, pause, and stop functionalities. Similarly, themedia guidance application may identify, from using the hexadecimal codeidentifier of the tablet computer device, a second set of devicefunctionalities for the tablet computer device, including power, play,pause, stop, rewind, and fast-forward functionalities. By identifyingsets of functionalities provided by the first and second user inputdevices, the media guidance application may identify the devicefunctionalities that the user input devices have in common and thedevice functionalities that are exclusive to the second user inputdevice.

The media guidance application may compare the first set of devicefunctionalities with the second set of device functionalities anddetermine, based on the comparing, a set of common devicefunctionalities. For example, the media guidance application may comparethe first set, including power, play, pause, and stop devicefunctionalities, with the second set, including power, play, pause,stop, rewind, and fast-forward device functionalities, and determine aset of common device functionalities to include the power, play, pause,and stop functionalities. Determining a set of common devicefunctionalities enables the media guidance application to identifyinputs of the second user input device that correspond to the set ofcommon device functionalities and may be adapted to resemble inputs ofthe first user input device.

The media guidance application may modify the display of a first inputof the inputs corresponding to a first device functionality of thecommon device functionalities to resemble visual attributes of a buttonof the first user input device associated with the first overlappingdevice functionality. For example, the media guidance application maymodify the display of an input of the tablet computer devicecorresponding to the power functionality to resemble visual attributesof a button of the remote control device associated with the powerfunctionality. For example, the media guidance application may modifythe display of the input of the tablet computer device by changing theshape of the display of the input to a round shape corresponding to theround shape of the button of the remote control device. The user maymore easily recognize and use inputs on the second device that visuallyresemble inputs on the first device. As a result, the user may have abetter experience adapting to the unfamiliar newer device.

In some embodiments, the media guidance application may receive, from auser, a request to modify a display of inputs of a second user inputdevice to correspond to inputs of a first user input device. Forexample, the user may transmit a request (e.g., via a web interface) tomodify the display of inputs of a tablet computer device to correspondto input buttons of a remote control device.

In some embodiments, the media guidance application may receive, fromthe user, a request to modify a display of inputs of the second userinput device, without an indication of a first user input device. Forexample, the media guidance application may receive, from the user, arequest to modify the display of inputs of a tablet computer device. Themedia guidance application may retrieve a user profile comprising alisting of user input devices associated with the user, where thelisting comprises a device identifier and timestamp of usage for eachdevice. For example, the media guidance application may retrieve (e.g.,from a database), a user profile comprising a list that includes aremote control device with timestamp T1, the tablet computer device withtimestamp T2, and a mobile device with timestamp T3, where T1 is earlierthan T2 and T2 is earlier than T3.

The media guidance application may select, from the listing, a firstuser input device that has a timestamp of usage that is earlier than thetimestamp of usage of the second user input device. For example, themedia guidance application may select the remote control device withtimestamp T1 to be the first user input device. The timestamp for eachuser input device may represent, for example, the point in time at whichthe user input device was registered with the media guidance system, thepoint in time at which the user input device was first used for morethan a threshold amount of time, the point in time at which the userinput device was most recently used, or another point in time. Byselecting a first user input device that has an earlier timestamp thanthe second user input device, the media guidance application supplementsthe user request to modify the display of inputs of the second userinput device by selecting a device with more familiar inputs (the firstuser input device) to model the display of the second user input deviceafter.

In some embodiments, in response to the request from the user to modifya display of inputs of a second user input device, the media guidanceapplication may retrieve a user profile comprising a listing of userinput devices associated with the user, where the listing comprises adevice identifier and usage amount for each user input device. Forexample, in response to the request from the user to modify the displayof inputs of the tablet computer device, the media guidance applicationmay retrieve a user profile comprising a list that includes a remotecontrol device with usage amount A1, the tablet computer device withusage amount A2, and a mobile device with usage amount A3, where A1 isless than A2 and A2 is less than A3. The media guidance application mayselect, from the listing, a first user input device that has a usageamount that is greater than the usage amount of the second user inputdevice. For example, the media guidance application may select themobile device with usage amount A3 to be the first user input device. Byselecting a first user input device that has a greater usage amount thanthe second user input device, the media guidance application supplementsthe user request to modify the display of inputs of the second userinput device by selecting a device with more familiar inputs (the firstuser input device) to model the display of the second user input deviceafter.

In some embodiments, the media guidance application may retrieve (e.g.,from the user profile) a first identifier of the first user input deviceand a second identifier of the second user input device. For example,the media guidance application may retrieve, as the first identifier, ahexadecimal code associated with the remote control device, and as thesecond identifier, a hexadecimal code associated with the tabletcomputer device.

The media guidance application may input the first identifier into afirst database comprising device functionalities and input maps of thefirst user input device to determine a first set of devicefunctionalities of the first user input device and a first input map ofthe first user input device, where the first input map comprises visualattributes of the inputs of the first user input device. For example,the media guidance application may input the first identifier of theremote control device into a first database to determine a set of devicefunctionalities and a first input map of the remote control device. Thefirst input map may comprise a data structure comprising an identifier,visual attributes, and a corresponding device functionality for eachinput of the first user input device. For example, the first input mapof the remote control device may include a device identifier such as thefirst identifier, visual attributes of the inputs of the remote controldevice, and a mapping of each input to a corresponding devicefunctionality. In some embodiments, the visual attributes for each inputof the first user input device comprise at least one of a shape, a colorscheme, a size, a font face, a spatial position, and/or a styleidentifier. A font face may include, for example, attributes for atypeface (i.e., a particular design of type), a size, and/or a weight.For example, if there are two inputs of the first user input device, oneinput may have visual attributes including a square shape and a colorscheme of red text and black background coloring, and the other inputmay have a visual attribute of a sans serif font face.

The media guidance application may input the second identifier into asecond database comprising device functionalities and input maps of thesecond user input device to determine a second set of devicefunctionalities of the second user input device and a second input mapof the second user input device, where the second input map comprisesvisual attributes of the inputs of the second user input device. Forexample, the media guidance application may input the second identifierof the tablet computer device into a second database to determine a setof device functionalities and a second input map of the tablet computerdevice. The second input map may comprise a data structure comprising anidentifier, visual attributes, and a corresponding device functionalityfor each input of the second user input device. For example, the secondinput map of the tablet computer device may include a device identifiersuch as the second identifier, visual attributes of the inputs of thetablet computer device, and a mapping of each input to a correspondingdevice functionality. In some embodiments, the visual attributes foreach input of the second user input device comprise at least one of ashape, a color scheme, a size, a font face, a spatial position, and/or astyle identifier. For example, if there are two inputs of the seconduser input device, one input may have a visual attribute of a roundshape, and the other input may have a visual attribute of a size of 30square pixels.

The media guidance application may compare the first set of devicefunctionalities with the second set of device functionalities anddetermine, based on the comparing, a set of common devicefunctionalities. For example, the remote control device may have thefollowing first set of device functionalities: power, play, pause, andstop. The tablet computer device may have the following second set ofdevice functionalities: power, play, pause, stop, rewind, andfast-forward. In this example, the media guidance application maycompare the first set of device functionalities with the second set ofdevice functionalities and determine the set of common devicefunctionalities to be power, play, pause, and stop. By determining whichdevice functionalities are common to both the newer and the older userinput devices, the media guidance application may determine whichcorresponding inputs of the second (newer) user input device can bemodified to visually resemble inputs of the first (older) user inputdevice.

In some embodiments, the media guidance application may compare thefirst set of device functionalities with the second set of devicefunctionalities by comparing a first device functionality from the firstset with a second device functionality from the second set anddetermining whether, at a given state for a given user equipment device,executing the first device functionality would result in a same outputstate of the given user equipment device as executing the second devicefunctionality. For example, the media guidance application may comparethe power device functionality from the first set of devicefunctionalities with the power device functionality from the second setof device functionalities and determine whether, at a given state for agiven user equipment device (e.g., a set-top box), executing the firstpower device functionality would result in a same output state of thegiven user equipment device as executing the second power devicefunctionality. For example, the media guidance application may determinewhether, at an “on” state of a set-top box associated with the remotecontrol device and tablet computer device, executing the first powerdevice functionality of the remote control device would result in thesame state (e.g., an “off” state) as executing the second power devicefunctionality of the tablet computer device. The media guidanceapplication may make this determination for each possible pairing ofinputs from the first user input device and the second user inputdevice.

In some embodiments, in response to determining that, at a given statefor a given user equipment device, executing the first devicefunctionality would result in the same output state as executing thesecond device functionality, the media guidance application may add thefirst device functionality to the set of common device functionalities.For example, in response to determining that, at an “on” state of aset-top box, executing the first power device functionality of theremote control device would result in a same “off” state as executingthe second power device functionality of the tablet computer device, themedia guidance application may add the power device functionality to aset of common device functionalities between the remote control deviceand the tablet computer device.

In response to determining the set of common device functionalities, themedia guidance application may retrieve a first input of the first userinput device that corresponds to a first device functionality in the setof common device functionalities and a second input of the second userinput device that corresponds to the first device functionality in theset of common device functionalities. For example, the media guidanceapplication may retrieve a first input of the remote control device thatcorresponds to the first power device functionality and a second inputof the tablet computer device that corresponds to the first power devicefunctionality.

In some embodiments, the media guidance application may retrieve a firstinput of the first user input device that corresponds to a first devicefunctionality in the set of common device functionalities and a secondinput of the second user input device that corresponds to a seconddevice functionality in the set of common device functionalities. Forexample, the media guidance application may retrieve a first input ofthe remote control device that corresponds to the first power devicefunctionality and a second input of the tablet computer device thatcorresponds to, for example, a “change mode” device functionality.

The media guidance application may modify visual attributes of thesecond input of the second user input device to correspond to visualattributes of the first input of the first user input device. Forexample, the media guidance application may modify the shape and fontface of the input corresponding to the first power device functionalityof the tablet computer device to correspond to the shape and font faceof the input corresponding to the first power device functionality ofthe remote control device. In another example, where the first input isthe input of the remote control device that corresponds to the firstpower device functionality and the second input is the input of thetablet computer device that corresponds to a “change mode” devicefunctionality, the media guidance application may modify the colorscheme of the second input to correspond to the color scheme of thefirst input. By modifying visual attributes of the second input tocorrespond to visual attributes of the first input, the second input ispresented in a more familiar way to the user, who may not haverecognized the device functionality of the second input with unfamiliarvisual attributes.

In some embodiments, the media guidance application may determine anexclusive set of device functionalities that are in the second set ofdevice functionalities and not in the first set of devicefunctionalities. For example, if the first set of device functionalitiesincludes power, play, pause, and stop, and the second set of devicefunctionalities includes power, play, pause, stop, rewind, andfast-forward, the media guidance application may determine the exclusiveset of device functionalities that are in the second set and not thefirst set to include the rewind and fast-forward device functionalities.

The media guidance application may retrieve a third input of the seconduser input device that corresponds to a third device functionality inthe exclusive set of device functionalities. For example, the mediaguidance application may retrieve a third input of the tablet computerdevice that corresponds to the rewind device functionality.

The media guidance application may modify visual attributes of the thirdinput of the second user input device to correspond to visual attributesof the first input of the first user input device. For example, themedia guidance application may modify the size and color scheme of theinput of the tablet computer device that corresponds to the rewinddevice functionality to correspond to the size and color scheme of theinput of the remote control device that corresponds to, for example, aplay device functionality. By modifying the visual attributes of inputsof the second user input device that correspond to the set of exclusivedevice functionalities, the media guidance application may present theuser with a more familiar interface for a new device functionality,which both improves accessibility of the new user input device andpreserves the additional functionality of the new user input device,thereby improving user experience.

BRIEF DESCRIPTION OF THE FIGURES

The above and other objects and advantages of the disclosure will beapparent upon consideration of the following detailed description, takenin conjunction with the accompanying drawings, in which like referencecharacters refer to like parts throughout, and in which:

FIG. 1 shows a first user input device with inputs associated withvarious device functionalities, in accordance with some embodiments ofthe disclosure.

FIG. 2 shows a second user input device with a touchscreen display andtouchscreen inputs associated with various device functionalities, inaccordance with some embodiments of the disclosure.

FIG. 3 shows the second user input device with touchscreen inputs of thetouchscreen display modified to visually correspond to the inputs offirst user input device, in accordance with some embodiments of thedisclosure.

FIGS. 4 and 5 show illustrative examples of display screens generated bya media guidance application in accordance with some embodiments of thedisclosure;

FIG. 6 is a block diagram of an illustrative user equipment device inaccordance with some embodiments of the disclosure;

FIG. 7 is a block diagram of an illustrative media system in accordancewith some embodiments of the disclosure;

FIG. 8 is a flowchart of a detailed illustrative process for modifyingvisual attributes of a second input of a second user input device tocorrespond to visual attributes of a first input of a first user inputdevice, in accordance with some embodiments of the disclosure;

FIG. 9 is a flowchart of a detailed illustrative process for comparingthe first set of device functionalities with the second set of devicefunctionalities, in accordance with some embodiments of the disclosure;

FIG. 10 is a flowchart of a detailed illustrative process for receiving,from the user, the request to modify the display of inputs of the seconduser input device to correspond to inputs of the first user inputdevice, in accordance with some embodiments of the disclosure; and

FIG. 11 is a flowchart of a detailed illustrative process for modifyingvisual attributes of an input with a given device functionality tocorrespond to visual attributes of an input with a different devicefunctionality, in accordance with some embodiments of the disclosure.

DETAILED DESCRIPTION

Systems and methods are described herein for adapting a second userinput device to resemble a first user input device while preserving newfunctionalities not available in the first user input device. FIG. 1shows an exemplary first user input device 100 with inputs associatedwith various device functionalities, in accordance with some embodimentsof the disclosure. FIG. 2 shows an exemplary second user input device130 with touchscreen display 131 and touchscreen inputs associated withvarious device functionalities, in accordance with some embodiments ofthe disclosure. A media guidance application may retrieve an identifierof the first user input device associated with a first user equipmentdevice, where the first user equipment device was previously associatedwith the user. For example, the media guidance application may retrievea hexadecimal code that identifies remote control device 100 associatedwith a set-top box, where the set-top box was previously associated withthe user. The media guidance application may retrieve an identifier ofthe second user input device associated with a second user equipmentdevice, where the second user equipment device has been newly associatedwith the user, and where the second user input device comprises adisplay of inputs for performing respective device functions. Forexample, the media guidance application may retrieve a hexadecimal codethat identifies tablet computer device 130 associated with a differentset-top box, where the different set-top box has been newly associatedwith the user, and where the tablet computer device has a touchscreendisplay for inputs that enable user input to the different set-top box.By retrieving identifiers of the first and second user input devices,the media guidance application may retrieve additional attributes of theuser input devices that may facilitate the adaptation of the second userinput device to resemble the first user input device. The media guidanceapplication may identify, based on the first identifier and the secondidentifier, respectively, a first set of device functionalities providedby the first user input device and a second set of devicefunctionalities provided by the second user input device. For example,the media guidance application may identify, from using the hexadecimalcode identifier of the remote control device, a first set of devicefunctionalities for the remote control device, including power, play,pause, and stop functionalities. Similarly, the media guidanceapplication may identify, from using the hexadecimal code identifier ofthe tablet computer device, a second set of device functionalities forthe tablet computer device, including power, play, pause, stop, rewind,and fast-forward functionalities. By identifying sets of functionalitiesprovided by the first and second user input devices, the media guidanceapplication may identify the device functionalities that the user inputdevices have in common and the device functionalities that are exclusiveto the second user input device. The media guidance application maycompare the first set of device functionalities with the second set ofdevice functionalities and determine, based on the comparing, a set ofcommon device functionalities. For example, the media guidanceapplication may compare the first set, including power, play, pause, andstop device functionalities, with the second set, including power, play,pause, stop, rewind, and fast-forward device functionalities, anddetermine a set of common device functionalities to include the power,play, pause, and stop functionalities. Determining a set of commondevice functionalities enables the media guidance application toidentify inputs of the second user input device that correspond to theset of common device functionalities and may be adapted to resembleinputs of the first user input device. The media guidance applicationmay modify the display of a first input of the inputs corresponding to afirst device functionality of the common device functionalities toresemble visual attributes of a button of the first user input deviceassociated with the first overlapping device functionality. FIG. 3 showsthe second user input device with touchscreen inputs in touchscreendisplay 161 modified to visually correspond to the inputs of first userinput device 100, in accordance with some embodiments of the disclosure.For example, the media guidance application may modify the display of aninput of the tablet computer device corresponding to the powerfunctionality to resemble visual attributes of a button of the remotecontrol device associated with the power functionality. For example, themedia guidance application may modify the display of the input of thetablet computer device by changing the shape of the display of the inputto a round shape corresponding to the round shape of the button of theremote control device. The user may more easily recognize and use inputson the second device that visually resemble inputs on the first device.As a result, the user may have a better experience adapting to theunfamiliar newer device.

In some embodiments, the media guidance application may receive, from auser, a request to modify a display of inputs of a second user inputdevice to correspond to inputs of a first user input device. Forexample, the user may transmit a request (e.g., via a web interface) tomodify the display of inputs of a tablet computer device to correspondto input buttons of a remote control device. In another example, theuser may transmit the request via an option on the second user inputdevice. For example, the user may select, from a menu screen ontouchscreen display 131 of second user input device 130, as shown inFIG. 2, an action option and external device name, e.g., the device nameof first user input device 100, resulting in device 130 generating andtransmitting a request to modify the display of inputs of device 130 tocorrespond to inputs of device 100.

In some embodiments, the media guidance application may receive, fromthe user, a request to modify a display of inputs of the second userinput device, without an indication of a first user input device. Forexample, the media guidance application may receive, from the user, arequest to modify the display of inputs of a tablet computer device. Themedia guidance application may retrieve a user profile comprising alisting of user input devices associated with the user, where thelisting comprises a device identifier and timestamp of usage for eachdevice. The device identifier may be, for example, a hexadecimal code oralphanumeric string that is unique to a device. The timestamp may be,for example, a data structure that stores the year, month, date, hour,minute, and second of a particular point in time. In another example,the timestamp may be represented by a Unix epoch, which is the number ofseconds that have elapsed between Jan. 1, 1970 at midnight inCoordinated Universal Time (UTC) and a particular point in time. Forexample, the media guidance application may retrieve (e.g., from adatabase), a user profile comprising a list that includes a remotecontrol device with timestamp T1, the tablet computer device withtimestamp T2, and a mobile device with timestamp T3, where T1 is earlierthan T2 and T2 is earlier than T3. For example, if the timestamp isrepresented by a Unix epoch, the media guidance application maydetermine that T1 is earlier than T2 by executing an arithmeticrelational comparison and determining that the value of T1 (measured in,for example, seconds) is less than the value of T2. The media guidanceapplication may select, from the listing in the user profile, a firstuser input device that has a timestamp of usage that is earlier than thetimestamp of usage of the second user input device. For example, themedia guidance application may select the remote control device withtimestamp T1 to be the first user input device. The timestamp for eachuser input device may represent, for example, the point in time at whichthe user input device was first registered with the media guidancesystem, the point in time at which the user input device was first usedfor more than a threshold amount of time, the point in time at which theuser input device was most recently used, or another point in time. Byselecting a first user input device that has an earlier timestamp thanthe second user input device, the media guidance application supplementsthe user request to modify the display of inputs of the second userinput device by selecting a device with more familiar inputs (the firstuser input device) to model the display of the second user input deviceafter.

In some embodiments, in response to the request from the user to modifya display of inputs of a second user input device, the media guidanceapplication may retrieve a user profile comprising a listing of userinput devices associated with the user, where the listing comprises adevice identifier and usage amount for each user input device. The usageamount may be, for example, a value of the cumulative amount of timethat the user input device has been powered on, measured in seconds, forexample. In another example, the usage amount may be the number of timesthat the user input device has been powered on. In one example, inresponse to the request from the user to modify the display of inputs ofthe tablet computer device, the media guidance application may retrievea user profile comprising a list that includes a remote control devicewith usage amount A1, the tablet computer device with usage amount A2,and a mobile device with usage amount A3, where A1 is less than A2 andA2 is less than A3. The media guidance application may determine that A1is less than A2 by executing an arithmetic relational comparison anddetermining that the value of A1 (measured in, for example, seconds) isless than the value of T2. The media guidance application may select,from the listing, a first user input device that has a usage amount thatis greater than the usage amount of the second user input device. Forexample, the media guidance application may select the mobile devicewith usage amount A3 to be the first user input device. By selecting afirst user input device that has a greater usage amount than the seconduser input device, the media guidance application supplements the userrequest to modify the display of inputs of the second user input deviceby selecting a device with more familiar inputs (the first user inputdevice) to model the display of the second user input device after.

In some embodiments, the media guidance application may retrieve (e.g.,from the user profile) a first identifier of the first user input deviceand a second identifier of the second user input device. For example,the media guidance application may retrieve from a database, as thefirst identifier, a hexadecimal code associated with the remote controldevice, and as the second identifier, a hexadecimal code associated withthe tablet computer device. In another example, the first identifier andsecond identifier may be unique alphanumeric strings, memory addresses(e.g., in hexadecimal), hash values, or other representations for whicheach representation is unique.

The media guidance application may input the first identifier into afirst database comprising device functionalities and input maps of thefirst user input device to determine a first set of devicefunctionalities of the first user input device and a first input map ofthe first user input device, where the first input map comprises visualattributes of the inputs of the first user input device. For example,the media guidance application may input the first identifier of theremote control device into a first database to retrieve, from thedatabase, a set of device functionalities and a first input map of theremote control device. The first input map may comprise a data structurecomprising an identifier, display coordinates, visual attributes, and acorresponding device functionality for each input of the first userinput device. For example, the first input map of the remote controldevice may include, for each input of the remote control device, aninput identifier (e.g., a hexadecimal code, alphanumeric string, etc.),visual attributes of the inputs of the remote control device, and amapping of each input to a corresponding device functionality. In someembodiments, the visual attributes for each input of the first userinput device comprise at least one of a shape (e.g., round, rectangular,diamond, etc.), a color scheme (e.g., black text on a grey background),a size (e.g., in pixels, millimeters, etc.), a font face (e.g., serif;sans serif; a specific typeface such as Tahoma; a combination oftypeface, size, and weight, etc.), a spatial position (e.g.,two-dimensional “x, y” coordinates, coordinate values that areassociated with a partition of the device face, etc.), and/or a styleidentifier (e.g., an identifier associated with various visualattributes, stored in, for example, a data structure mapping identifiersto the various visual attributes). For example, if there are two inputsof the first user input device, one input may have visual attributesincluding a square shape and a color scheme of red symbols on blackbackground coloring, and the other input may have a visual attribute ofa sans serif font face.

The media guidance application may input the second identifier into asecond database comprising device functionalities and input maps of thesecond user input device to determine a second set of devicefunctionalities of the second user input device and a second input mapof the second user input device, where the second input map comprisesvisual attributes of the inputs of the second user input device. Forexample, the media guidance application may input the second identifierof the tablet computer device into a second database to determine a setof device functionalities and a second input map of the tablet computerdevice. The second input map may comprise a data structure comprising anidentifier, visual attributes, and a corresponding device functionalityfor each input of the second user input device. For example, the secondinput map of the tablet computer device may include, for each input ofthe tablet computer device, an input identifier (e.g., a hexadecimalcode, alphanumeric string, etc.), visual attributes of the inputs of thetablet computer device, and a mapping of each input to a correspondingdevice functionality. In some embodiments, the visual attributes foreach input of the second user input device comprise at least one of ashape (e.g., round, rectangular, diamond, etc.), a color scheme (e.g.,black text on a grey background), a size (e.g., in pixels, millimeters,etc.), a font face, a spatial position (e.g., serif, sans serif, aspecific font face such as Tahoma, etc.), and/or a style identifier(e.g., an identifier associated with various visual attributes, storedin, for example, a data structure mapping identifiers to the variousvisual attributes). For example, if there are two inputs of the seconduser input device, one input may have a visual attribute of a roundshape, and the other input may have a visual attribute of a size of 30square pixels.

The media guidance application may compare the first set of devicefunctionalities with the second set of device functionalities anddetermine, based on the comparing, a set of common devicefunctionalities. For example, the remote control device may have thefollowing first set of device functionalities: power, menu, search, andI/O. On user input device 100, as shown in FIG. 1, for example, input102 may correspond to a power device functionality, input 104 maycorrespond to a menu device functionality, input 106 may correspond to asearch device functionality, and input 108 may correspond to an I/O(input/output) device functionality. The tablet computer device may havethe following second set of device functionalities: power, menu, search,I/O, Netflix, and Fire TV. On touchscreen user input device 130, asshown in FIG. 2, for example, input 132 may correspond to a power devicefunctionality, input 134 may correspond to a menu device functionality,input 136 may correspond to a search device functionality, input 138 maycorrespond to an I/O device functionality, and inputs 141 may correspondto Netflix, Fire TV, and other device functionalities. In this example,the media guidance application may compare the first set of devicefunctionalities with the second set of device functionalities anddetermine the set of common device functionalities to be power, menu,search, and I/O. By determining which device functionalities are commonto both the newer and the older user input devices, the media guidanceapplication may determine which corresponding inputs of the second(newer) user input device can be modified to visually resemble inputs ofthe first (older) user input device. In this example, by determining theset of common device functionalities to be power, menu, search, and I/O,the media guidance application may determine that input 132 may bemodified to visually resemble input 102, as inputs 102 and 132correspond to the power device functionality; that input 134 may bemodified to visually resemble input 104, as inputs 104 and 134correspond to the menu device functionality; that input 136 may bemodified to visually resemble input 106, as inputs 106 and 136correspond to the search device functionality; and that input 138 may bemodified to visually resemble input 108, as inputs 108 and 138correspond to the input (I/O) device functionality.

In some embodiments, the media guidance application may compare thefirst set of device functionalities with the second set of devicefunctionalities by comparing a first device functionality from the firstset with a second device functionality from the second set anddetermining whether, at a given state for a given user equipment device,executing the first device functionality would result in a same outputstate of the given user equipment device as executing the second devicefunctionality. For example, the media guidance application may comparethe power device functionality from the first set of devicefunctionalities with the power device functionality from the second setof device functionalities and determine whether, at a given state for agiven user equipment device (e.g., a set-top box), executing the firstpower device functionality would result in a same output state of thegiven user equipment device as executing the second power devicefunctionality. For example, the media guidance application may determinewhether, at an “on” state of a set-top box associated with the remotecontrol device and tablet computer device, executing the first powerdevice functionality of the remote control device would result in thesame state (e.g., an “off” state) as executing the second power devicefunctionality of the tablet computer device. In another example, themedia guidance application may compare the first device functionalitywith the second device functionality by determining whether, at a firstgiven state of a first user equipment device that is associated with thefirst user input device, executing the first device functionality wouldresult in a similar output state as would, at a second given state of asecond user equipment device that is associated with the second userinput device, executing the second device functionality. The mediaguidance application may determine whether two output states are similarby comparing, for example, playback status, display settings, etc. ofthe output states, and, for example, determining whether a thresholdnumber of settings match. The media guidance application may make thisdetermination for each possible pairing of inputs from the first userinput device and the second user input device.

In some embodiments, in response to determining that, at a given statefor a given user equipment device, executing the first devicefunctionality would result in the same output state as executing thesecond device functionality, the media guidance application may add thefirst device functionality to the set of common device functionalities.For example, in response to determining that, at an “on” state of aset-top box, executing the first power device functionality of theremote control device would result in a same “off” state as executingthe second power device functionality of the tablet computer device, themedia guidance application may add the power device functionality to aset of common device functionalities between the remote control deviceand the tablet computer device. The set of common device functionalitiesmay be stored in, for example, a data structure comprising a list ofeach common device functionality, which may be represented by a uniqueidentifier (e.g., a hexadecimal code, alphanumeric string, a descriptivestring, etc.).

In response to determining the set of common device functionalities, themedia guidance application may retrieve a first input of the first userinput device that corresponds to a first device functionality in the setof common device functionalities and a second input of the second userinput device that corresponds to the first device functionality in theset of common device functionalities. For example, the media guidanceapplication may retrieve first input 102 of user input device 100 (e.g.,a remote control device) (FIG. 1) that corresponds to the first powerdevice functionality and second input 132 of user input device 130(e.g., a tablet computer device) (FIG. 2) that corresponds to the firstpower device functionality.

In some embodiments, the media guidance application may retrieve a firstinput of the first user input device that corresponds to a first devicefunctionality in the set of common device functionalities and a secondinput of the second user input device that corresponds to a seconddevice functionality in the set of common device functionalities. Forexample, the media guidance application may retrieve first input 102 ofthe remote control device that corresponds to a power devicefunctionality and, for example, second input 136 of the tablet computerdevice that corresponds to a question device functionality. In thisexample, first input 102 and second input 136 do not correspond to acommon device functionality, but it may still be advantageous to modifythe visual attributes of second input 136 to resemble first input 102,for example, if the device functionalities of the inputs are related butnot the same.

The media guidance application may modify visual attributes of thesecond input of the second user input device to correspond to visualattributes of the first input of the first user input device. This mayresult in the display of inputs of the second user input device to bemodified as shown in FIG. 3. Modifying visual attributes may include,for example, changing a size, shape, color scheme, font, position, etc.of the input. For example, the media guidance application may modify theshape, font face, and position of input 132 of device 130 (FIG. 2) tocorrespond to the shape, font face, and position of input 102 of device100 (FIG. 1), resulting in modified input 162 of device 160 (FIG. 3),which has the same rectangular shape, capital-letter font face, andupper-left corner position as input 102. Similarly, modifying input 134,136, and 138 to correspond to inputs 104, 106, and 108, respectively,may result in modified inputs 164, 166, and 168, respectively. In someexamples, some visual attributes of the second input may be modified tocorrespond to the visual attributes of the first input while some visualattributes of the second input may not be modified. For example, inputs110 (FIG. 1) and 140 (FIG. 2) may correspond to the same devicefunctionality, and input 140 may be modified to visually correspond toinput 110 by changing the color scheme and shape of input 140 to matchinput 110 but leaving the position of input 140 unmodified, as shown bymodified input 170 (FIG. 3). In another example, where the first andsecond input do not correspond to a common device functionality, themedia guidance application may modify the color scheme of input 136(FIG. 2), for example, to correspond to the color scheme of input 102(FIG. 1), for example. In some cases, when the first user input devicehas a display surface that differs from the display surface of thesecond user input device (e.g., as shown in FIGS. 1 and 2, where theinput display surface of device 100 is a trapezoidal shape that mayhave, for example, a slightly convex surface, and the input displaysurface of device 130 is rectangular and flat), modifying the visualattributes of the second input may include skewing the second input, inshape, size, position, or another way, to resemble the first input. Bymodifying visual attributes of the second input to correspond to visualattributes of the first input, the second input is presented in a morefamiliar way to the user, who may not have recognized the devicefunctionality of the second input with unfamiliar visual attributes. Insome other cases, the media guidance application may refrain frommodifying visual attributes of a second input to correspond to visualattributes of a first input that has a common device functionality withthe second input. For example, inputs 112 and 113 (FIG. 1) may each havea corresponding common device functionality with inputs 142 and 143(FIG. 2), respectively, and the media guidance application may refrainfrom modifying visual attributes of 142 and 143, as shown by unmodifiedinputs 172 and 173 (FIG. 3). Similarly, inputs 120 (FIG. 1) and inputs145 (FIG. 2) may have corresponding common device functionalities andthe media guidance application may refrain from modifying visualattributes of inputs 145, as shown by unmodified inputs 175 (FIG. 3).This may, for example, result in device 160 with modified display 161(FIG. 3) presenting a more transitional interface to the user, wherecertain inputs are familiar and certain inputs may be unfamiliar.

In some embodiments, the media guidance application may determine anexclusive set of device functionalities that are in the second set ofdevice functionalities and not in the first set of devicefunctionalities. For example, if the first set of device functionalitiesincludes power, menu, search, and I/O, and the second set of devicefunctionalities includes power, menu, search, I/O, Netflix, Fire TV,HBO, Hulu, YouTube, and keyboard, the media guidance application maydetermine the exclusive set of device functionalities that are in thesecond set and not the first set to include the Netflix, Fire TV, HBO,Hulu, YouTube, and keyboard device functionalities. For example, themedia guidance application may determine the corresponding inputs of theexclusive set of device functionalities to include inputs 141(corresponding to the Netflix, Fire TV, HBO, Hulu, and YouTube devicefunctionalities) and inputs 150 (corresponding to the keyboard devicefunctionality) of device 130 (FIG. 2).

The media guidance application may retrieve a third input of the seconduser input device that corresponds to a third device functionality inthe exclusive set of device functionalities. For example, the mediaguidance application may retrieve a third input of inputs 141 of thetablet computer device that corresponds, for example, to a Netflixdevice functionality.

The media guidance application may modify visual attributes of the thirdinput of the second user input device to correspond to visual attributesof the first input of the first user input device. For example, themedia guidance application may modify the size and color scheme of thethird input to correspond to the size and color scheme of, for example,input 104 of device 100. By modifying the visual attributes of inputs ofthe second user input device that correspond to the set of exclusivedevice functionalities, the media guidance application may present theuser with a more familiar interface for a new device functionality,which both improves accessibility of the new user input device andpreserves the additional functionality of the new user input device,thereby improving user experience. In another example, the mediaguidance application may refrain from modifying visual attributes of thethird input of the second user input device to correspond to a firstinput of the first user input device. For example, the media guidanceapplication may refrain from modifying inputs 141 and inputs 150 (FIG.2), which correspond to the exclusive set of device functionalities,resulting in unmodified inputs 171 and inputs 180 (FIG. 3).

The amount of content available to users in any given content deliverysystem can be substantial. Consequently, many users desire a form ofmedia guidance through an interface that allows users to efficientlynavigate content selections and easily identify content that they maydesire. An application that provides such guidance is referred to hereinas an interactive media guidance application or, sometimes, a mediaguidance application or a guidance application.

Interactive media guidance applications may take various forms dependingon the content for which they provide guidance. One typical type ofmedia guidance application is an interactive television program guide.Interactive television program guides (sometimes referred to aselectronic program guides) are well-known guidance applications that,among other things, allow users to navigate among and locate many typesof content or media assets. Interactive media guidance applications maygenerate graphical user interface screens that enable a user to navigateamong, locate and select content. As referred to herein, the terms“media asset” and “content” should be understood to mean anelectronically consumable user asset, such as television programming, aswell as pay-per-view programs, on-demand programs (as in video-on-demand(VOD) systems), Internet content (e.g., streaming content, downloadablecontent, Webcasts, etc.), video clips, audio, content information,pictures, rotating images, documents, playlists, websites, articles,books, electronic books, blogs, chat sessions, social media,applications, games, and/or any other media or multimedia and/orcombination of the same. Guidance applications also allow users tonavigate among and locate content. As referred to herein, the term“multimedia” should be understood to mean content that utilizes at leasttwo different content forms described above, for example, text, audio,images, video, or interactivity content forms. Content may be recorded,played, displayed or accessed by user equipment devices, but can also bepart of a live performance.

The media guidance application and/or any instructions for performingany of the embodiments discussed herein may be encoded on computerreadable media. Computer readable media includes any media capable ofstoring data. The computer readable media may be transitory, including,but not limited to, propagating electrical or electromagnetic signals,or may be non-transitory including, but not limited to, volatile andnon-volatile computer memory or storage devices such as a hard disk,floppy disk, USB drive, DVD, CD, media cards, register memory, processorcaches, Random Access Memory (“RAM”), etc.

With the advent of the Internet, mobile computing, and high-speedwireless networks, users are accessing media on user equipment deviceson which they traditionally did not. As referred to herein, the phrase“user equipment device,” “user equipment,” “user device,” “electronicdevice,” “electronic equipment,” “media equipment device,” or “mediadevice” should be understood to mean any device for accessing thecontent described above, such as a television, a Smart TV, a set-topbox, an integrated receiver decoder (IRD) for handling satellitetelevision, a digital storage device, a digital media receiver (DMR), adigital media adapter (DMA), a streaming media device, a DVD player, aDVD recorder, a connected DVD, a local media server, a BLU-RAY player, aBLU-RAY recorder, a personal computer (PC), a laptop computer, a tabletcomputer, a WebTV box, a personal computer television (PC/TV), a PCmedia server, a PC media center, a hand-held computer, a stationarytelephone, a personal digital assistant (PDA), a mobile telephone, aportable video player, a portable music player, a portable gamingmachine, a smart phone, or any other television equipment, computingequipment, or wireless device, and/or combination of the same. In someembodiments, the user equipment device may have a front facing screenand a rear facing screen, multiple front screens, or multiple angledscreens. In some embodiments, the user equipment device may have a frontfacing camera and/or a rear facing camera. On these user equipmentdevices, users may be able to navigate among and locate the same contentavailable through a television. Consequently, media guidance may beavailable on these devices, as well. The guidance provided may be forcontent available only through a television, for content available onlythrough one or more of other types of user equipment devices, or forcontent available both through a television and one or more of the othertypes of user equipment devices. The media guidance applications may beprovided as on-line applications (i.e., provided on a web-site), or asstand-alone applications or clients on user equipment devices. Variousdevices and platforms that may implement media guidance applications aredescribed in more detail below.

One of the functions of the media guidance application is to providemedia guidance data to users. As referred to herein, the phrase “mediaguidance data” or “guidance data” should be understood to mean any datarelated to content or data used in operating the guidance application.For example, the guidance data may include program information, guidanceapplication settings, user preferences, user profile information, medialistings, media-related information (e.g., broadcast times, broadcastchannels, titles, descriptions, ratings information (e.g., parentalcontrol ratings, critic's ratings, etc.), genre or category information,actor information, logo data for broadcasters' or providers' logos,etc.), media format (e.g., standard definition, high definition, 3D,etc.), on-demand information, blogs, websites, and any other type ofguidance data that is helpful for a user to navigate among and locatedesired content selections.

FIGS. 4-5 show illustrative display screens that may be used to providemedia guidance data. The display screens shown in FIGS. 4-5 may beimplemented on any suitable user equipment device or platform. While thedisplays of FIGS. 4-5 are illustrated as full screen displays, they mayalso be fully or partially overlaid over content being displayed. A usermay indicate a desire to access content information by selecting aselectable option provided in a display screen (e.g., a menu option, alistings option, an icon, a hyperlink, etc.) or pressing a dedicatedbutton (e.g., a GUIDE button) on a remote control or other user inputinterface or device. In response to the user's indication, the mediaguidance application may provide a display screen with media guidancedata organized in one of several ways, such as by time and channel in agrid, by time, by channel, by source, by content type, by category(e.g., movies, sports, news, children, or other categories ofprogramming), or other predefined, user-defined, or other organizationcriteria.

FIG. 4 shows illustrative grid of a program listings display 400arranged by time and channel that also enables access to different typesof content in a single display. Display 400 may include grid 402 with:(1) a column of channel/content type identifiers 404, where eachchannel/content type identifier (which is a cell in the column)identifies a different channel or content type available; and (2) a rowof time identifiers 406, where each time identifier (which is a cell inthe row) identifies a time block of programming Grid 402 also includescells of program listings, such as program listing 408, where eachlisting provides the title of the program provided on the listing'sassociated channel and time. With a user input device, a user can selectprogram listings by moving highlight region 410. Information relating tothe program listing selected by highlight region 410 may be provided inprogram information region 412. Region 412 may include, for example, theprogram title, the program description, the time the program is provided(if applicable), the channel the program is on (if applicable), theprogram's rating, and other desired information.

In addition to providing access to linear programming (e.g., contentthat is scheduled to be transmitted to a plurality of user equipmentdevices at a predetermined time and is provided according to aschedule), the media guidance application also provides access tonon-linear programming (e.g., content accessible to a user equipmentdevice at any time and is not provided according to a schedule).Non-linear programming may include content from different contentsources including on-demand content (e.g., VOD), Internet content (e.g.,streaming media, downloadable media, etc.), locally stored content(e.g., content stored on any user equipment device described above orother storage device), or other time-independent content. On-demandcontent may include movies or any other content provided by a particularcontent provider (e.g., HBO On Demand providing “The Sopranos” and “CurbYour Enthusiasm”). HBO ON DEMAND is a service mark owned by Time WarnerCompany L.P. et al. and THE SOPRANOS and CURB YOUR ENTHUSIASM aretrademarks owned by the Home Box Office, Inc. Internet content mayinclude web events, such as a chat session or Webcast, or contentavailable on-demand as streaming content or downloadable content throughan Internet web site or other Internet access (e.g. FTP).

Grid 402 may provide media guidance data for non-linear programmingincluding on-demand listing 414, recorded content listing 416, andInternet content listing 418. A display combining media guidance datafor content from different types of content sources is sometimesreferred to as a “mixed-media” display. Various permutations of thetypes of media guidance data that may be displayed that are differentthan display 400 may be based on user selection or guidance applicationdefinition (e.g., a display of only recorded and broadcast listings,only on-demand and broadcast listings, etc.). As illustrated, listings414, 416, and 418 are shown as spanning the entire time block displayedin grid 402 to indicate that selection of these listings may provideaccess to a display dedicated to on-demand listings, recorded listings,or Internet listings, respectively. In some embodiments, listings forthese content types may be included directly in grid 402. Additionalmedia guidance data may be displayed in response to the user selectingone of the navigational icons 420. (Pressing an arrow key on a userinput device may affect the display in a similar manner as selectingnavigational icons 420.)

Display 400 may also include video region 422, and options region 426.Video region 422 may allow the user to view and/or preview programs thatare currently available, will be available, or were available to theuser. The content of video region 422 may correspond to, or beindependent from, one of the listings displayed in grid 402. Griddisplays including a video region are sometimes referred to aspicture-in-guide (PIG) displays. PIG displays and their functionalitiesare described in greater detail in Satterfield et al. U.S. Pat. No.6,564,378, issued May 13, 2003 and Yuen et al. U.S. Pat. No. 6,239,794,issued May 29, 2001, which are hereby incorporated by reference hereinin their entireties. PIG displays may be included in other mediaguidance application display screens of the embodiments describedherein.

Options region 426 may allow the user to access different types ofcontent, media guidance application displays, and/or media guidanceapplication features. Options region 426 may be part of display 400 (andother display screens described herein), or may be invoked by a user byselecting an on-screen option or pressing a dedicated or assignablebutton on a user input device. The selectable options within optionsregion 426 may concern features related to program listings in grid 402or may include options available from a main menu display. Featuresrelated to program listings may include searching for other air times orways of receiving a program, recording a program, enabling seriesrecording of a program, setting program and/or channel as a favorite,purchasing a program, or other features. Options available from a mainmenu display may include search options, VOD options, parental controloptions, Internet options, cloud-based options, device synchronizationoptions, second screen device options, options to access various typesof media guidance data displays, options to subscribe to a premiumservice, options to edit a user's profile, options to access a browseoverlay, or other options.

The media guidance application may be personalized based on a user'spreferences. A personalized media guidance application allows a user tocustomize displays and features to create a personalized “experience”with the media guidance application. This personalized experience may becreated by allowing a user to input these customizations and/or by themedia guidance application monitoring user activity to determine varioususer preferences. Users may access their personalized guidanceapplication by logging in or otherwise identifying themselves to theguidance application. Customization of the media guidance applicationmay be made in accordance with a user profile. The customizations mayinclude varying presentation schemes (e.g., color scheme of displays,font size of text, etc.), aspects of content listings displayed (e.g.,only HDTV or only 3D programming, user-specified broadcast channelsbased on favorite channel selections, re-ordering the display ofchannels, recommended content, etc.), desired recording features (e.g.,recording or series recordings for particular users, recording quality,etc.), parental control settings, customized presentation of Internetcontent (e.g., presentation of social media content, e-mail,electronically delivered articles, etc.) and other desiredcustomizations.

The media guidance application may allow a user to provide user profileinformation or may automatically compile user profile information. Themedia guidance application may, for example, monitor the content theuser accesses and/or other interactions the user may have with theguidance application. Additionally, the media guidance application mayobtain all or part of other user profiles that are related to aparticular user (e.g., from other web sites on the Internet the useraccesses, such as www.Tivo.com, from other media guidance applicationsthe user accesses, from other interactive applications the useraccesses, from another user equipment device of the user, etc.), and/orobtain information about the user from other sources that the mediaguidance application may access. As a result, a user can be providedwith a unified guidance application experience across the user'sdifferent user equipment devices. This type of user experience isdescribed in greater detail below in connection with FIG. 7. Additionalpersonalized media guidance application features are described ingreater detail in Ellis et al., U.S. Patent Application Publication No.2005/0251827, filed Jul. 11, 2005, Boyer et al., U.S. Pat. No.7,165,098, issued Jan. 16, 2007, and Ellis et al., U.S. PatentApplication Publication No. 2002/0174430, filed Feb. 21, 2002, which arehereby incorporated by reference herein in their entireties.

Another display arrangement for providing media guidance is shown inFIG. 5. Video mosaic display 500 includes selectable options 502 forcontent information organized based on content type, genre, and/or otherorganization criteria. In display 500, television listings option 504 isselected, thus providing listings 506, 508, 510, and 512 as broadcastprogram listings. In display 500 the listings may provide graphicalimages including cover art, still images from the content, video clippreviews, live video from the content, or other types of content thatindicate to a user the content being described by the media guidancedata in the listing. Each of the graphical listings may also beaccompanied by text to provide further information about the contentassociated with the listing. For example, listing 508 may include morethan one portion, including media portion 514 and text portion 516.Media portion 514 and/or text portion 516 may be selectable to viewcontent in full-screen or to view information related to the contentdisplayed in media portion 514 (e.g., to view listings for the channelthat the video is displayed on).

The listings in display 500 are of different sizes (i.e., listing 506 islarger than listings 508, 510, and 512), but if desired, all thelistings may be the same size. Listings may be of different sizes orgraphically accentuated to indicate degrees of interest to the user orto emphasize certain content, as desired by the content provider orbased on user preferences. Various systems and methods for graphicallyaccentuating content listings are discussed in, for example, Yates, U.S.Patent Application Publication No. 2010/0153885, filed Nov. 12, 2009,which is hereby incorporated by reference herein in its entirety.

Users may access content and the media guidance application (and itsdisplay screens described above and below) from one or more of theiruser equipment devices. FIG. 6 shows a generalized embodiment ofillustrative user equipment device 600. More specific implementations ofuser equipment devices are discussed below in connection with FIG. 7.User equipment device 600 may receive content and data via input/output(hereinafter “I/O”) path 602. I/O path 602 may provide content (e.g.,broadcast programming, on-demand programming, Internet content, contentavailable over a local area network (LAN) or wide area network (WAN),and/or other content) and data to control circuitry 604, which includesprocessing circuitry 606 and storage 608. Control circuitry 604 may beused to send and receive commands, requests, and other suitable datausing I/O path 602. I/O path 602 may connect control circuitry 604 (andspecifically processing circuitry 606) to one or more communicationspaths (described below). I/O functions may be provided by one or more ofthese communications paths, but are shown as a single path in FIG. 6 toavoid overcomplicating the drawing.

Control circuitry 604 may be based on any suitable processing circuitrysuch as processing circuitry 606. As referred to herein, processingcircuitry should be understood to mean circuitry based on one or moremicroprocessors, microcontrollers, digital signal processors,programmable logic devices, field-programmable gate arrays (FPGAs),application-specific integrated circuits (ASICs), etc., and may includea multi-core processor (e.g., dual-core, quad-core, hexa-core, or anysuitable number of cores) or supercomputer. In some embodiments,processing circuitry may be distributed across multiple separateprocessors or processing units, for example, multiple of the same typeof processing units (e.g., two Intel Core i7 processors) or multipledifferent processors (e.g., an Intel Core i5 processor and an Intel Corei7 processor). In some embodiments, control circuitry 604 executesinstructions for a media guidance application stored in memory (i.e.,storage 608). Specifically, control circuitry 604 may be instructed bythe media guidance application to perform the functions discussed aboveand below. For example, the media guidance application may provideinstructions to control circuitry 604 to generate the media guidancedisplays. In some implementations, any action performed by controlcircuitry 604 may be based on instructions received from the mediaguidance application.

In client-server based embodiments, control circuitry 604 may includecommunications circuitry suitable for communicating with a guidanceapplication server or other networks or servers. The instructions forcarrying out the above-mentioned functionality may be stored on theguidance application server. Communications circuitry may include acable modem, an integrated services digital network (ISDN) modem, adigital subscriber line (DSL) modem, a telephone modem, Ethernet card,or a wireless modem for communications with other equipment, or anyother suitable communications circuitry. Such communications may involvethe Internet or any other suitable communications networks or paths(which is described in more detail in connection with FIG. 7). Inaddition, communications circuitry may include circuitry that enablespeer-to-peer communication of user equipment devices, or communicationof user equipment devices in locations remote from each other (describedin more detail below).

Memory may be an electronic storage device provided as storage 608 thatis part of control circuitry 604. As referred to herein, the phrase“electronic storage device” or “storage device” should be understood tomean any device for storing electronic data, computer software, orfirmware, such as random-access memory, read-only memory, hard drives,optical drives, digital video disc (DVD) recorders, compact disc (CD)recorders, BLU-RAY disc (BD) recorders, BLU-RAY 3D disc recorders,digital video recorders (DVR, sometimes called a personal videorecorder, or PVR), solid state devices, quantum storage devices, gamingconsoles, gaming media, or any other suitable fixed or removable storagedevices, and/or any combination of the same. Storage 608 may be used tostore various types of content described herein as well as mediaguidance data described above. Nonvolatile memory may also be used(e.g., to launch a boot-up routine and other instructions). Cloud-basedstorage, described in relation to FIG. 7, may be used to supplementstorage 608 or instead of storage 608.

Control circuitry 604 may include video generating circuitry and tuningcircuitry, such as one or more analog tuners, one or more MPEG-2decoders or other digital decoding circuitry, high-definition tuners, orany other suitable tuning or video circuits or combinations of suchcircuits. Encoding circuitry (e.g., for converting over-the-air, analog,or digital signals to MPEG signals for storage) may also be provided.Control circuitry 604 may also include scaler circuitry for upconvertingand downconverting content into the preferred output format of the userequipment 600. Circuitry 604 may also include digital-to-analogconverter circuitry and analog-to-digital converter circuitry forconverting between digital and analog signals. The tuning and encodingcircuitry may be used by the user equipment device to receive and todisplay, to play, or to record content. The tuning and encodingcircuitry may also be used to receive guidance data. The circuitrydescribed herein, including for example, the tuning, video generating,encoding, decoding, encrypting, decrypting, scaler, and analog/digitalcircuitry, may be implemented using software running on one or moregeneral purpose or specialized processors. Multiple tuners may beprovided to handle simultaneous tuning functions (e.g., watch and recordfunctions, picture-in-picture (PIP) functions, multiple-tuner recording,etc.). If storage 608 is provided as a separate device from userequipment 600, the tuning and encoding circuitry (including multipletuners) may be associated with storage 608.

A user may send instructions to control circuitry 604 using user inputinterface 610. User input interface 610 may be any suitable userinterface, such as a remote control, mouse, trackball, keypad, keyboard,touch screen, touchpad, stylus input, joystick, voice recognitioninterface, or other user input interfaces. Display 612 may be providedas a stand-alone device or integrated with other elements of userequipment device 600. For example, display 612 may be a touchscreen ortouch-sensitive display. In such circumstances, user input interface 610may be integrated with or combined with display 612. Display 612 may beone or more of a monitor, a television, a liquid crystal display (LCD)for a mobile device, amorphous silicon display, low temperature polysilicon display, electronic ink display, electrophoretic display, activematrix display, electro-wetting display, electrofluidic display, cathoderay tube display, light-emitting diode display, electroluminescentdisplay, plasma display panel, high-performance addressing display,thin-film transistor display, organic light-emitting diode display,surface-conduction electron-emitter display (SED), laser television,carbon nanotubes, quantum dot display, interferometric modulatordisplay, or any other suitable equipment for displaying visual images.In some embodiments, display 612 may be HDTV-capable. In someembodiments, display 612 may be a 3D display, and the interactive mediaguidance application and any suitable content may be displayed in 3D. Avideo card or graphics card may generate the output to the display 612.The video card may offer various functions such as accelerated renderingof 3D scenes and 2D graphics, MPEG-2/MPEG-4 decoding, TV output, or theability to connect multiple monitors. The video card may be anyprocessing circuitry described above in relation to control circuitry604. The video card may be integrated with the control circuitry 604.Speakers 614 may be provided as integrated with other elements of userequipment device 600 or may be stand-alone units. The audio component ofvideos and other content displayed on display 612 may be played throughspeakers 614. In some embodiments, the audio may be distributed to areceiver (not shown), which processes and outputs the audio via speakers614.

The guidance application may be implemented using any suitablearchitecture. For example, it may be a stand-alone applicationwholly-implemented on user equipment device 600. In such an approach,instructions of the application are stored locally (e.g., in storage608), and data for use by the application is downloaded on a periodicbasis (e.g., from an out-of-band feed, from an Internet resource, orusing another suitable approach). Control circuitry 604 may retrieveinstructions of the application from storage 608 and process theinstructions to generate any of the displays discussed herein. Based onthe processed instructions, control circuitry 604 may determine whataction to perform when input is received from input interface 610. Forexample, movement of a cursor on a display up/down may be indicated bythe processed instructions when input interface 610 indicates that anup/down button was selected.

In some embodiments, the media guidance application is a client-serverbased application. Data for use by a thick or thin client implemented onuser equipment device 600 is retrieved on-demand by issuing requests toa server remote to the user equipment device 600. In one example of aclient-server based guidance application, control circuitry 604 runs aweb browser that interprets web pages provided by a remote server. Forexample, the remote server may store the instructions for theapplication in a storage device. The remote server may process thestored instructions using circuitry (e.g., control circuitry 604) andgenerate the displays discussed above and below. The client device mayreceive the displays generated by the remote server and may display thecontent of the displays locally on equipment device 600. This way, theprocessing of the instructions is performed remotely by the server whilethe resulting displays are provided locally on equipment device 600.Equipment device 600 may receive inputs from the user via inputinterface 610 and transmit those inputs to the remote server forprocessing and generating the corresponding displays. For example,equipment device 600 may transmit a communication to the remote serverindicating that an up/down button was selected via input interface 610.The remote server may process instructions in accordance with that inputand generate a display of the application corresponding to the input(e.g., a display that moves a cursor up/down). The generated display isthen transmitted to equipment device 600 for presentation to the user.

In some embodiments, the media guidance application is downloaded andinterpreted or otherwise run by an interpreter or virtual machine (runby control circuitry 604). In some embodiments, the guidance applicationmay be encoded in the ETV Binary Interchange Format (EBIF), received bycontrol circuitry 604 as part of a suitable feed, and interpreted by auser agent running on control circuitry 604. For example, the guidanceapplication may be an EBIF application. In some embodiments, theguidance application may be defined by a series of JAVA-based files thatare received and run by a local virtual machine or other suitablemiddleware executed by control circuitry 604. In some of suchembodiments (e.g., those employing MPEG-2 or other digital mediaencoding schemes), the guidance application may be, for example, encodedand transmitted in an MPEG-2 object carousel with the MPEG audio andvideo packets of a program.

User equipment device 600 of FIG. 6 can be implemented in system 700 ofFIG. 7 as user television equipment 702, user computer equipment 704,wireless user communications device 706, or any other type of userequipment suitable for accessing content, such as a non-portable gamingmachine. For simplicity, these devices may be referred to hereincollectively as user equipment or user equipment devices, and may besubstantially similar to user equipment devices described above. Userequipment devices, on which a media guidance application may beimplemented, may function as a standalone device or may be part of anetwork of devices. Various network configurations of devices may beimplemented and are discussed in more detail below.

A user equipment device utilizing at least some of the system featuresdescribed above in connection with FIG. 6 may not be classified solelyas user television equipment 702, user computer equipment 704, or awireless user communications device 706. For example, user televisionequipment 702 may, like some user computer equipment 704, beInternet-enabled allowing for access to Internet content, while usercomputer equipment 704 may, like some television equipment 702, includea tuner allowing for access to television programming. The mediaguidance application may have the same layout on various different typesof user equipment or may be tailored to the display capabilities of theuser equipment. For example, on user computer equipment 704, theguidance application may be provided as a web site accessed by a webbrowser. In another example, the guidance application may be scaled downfor wireless user communications devices 706.

In system 700, there is typically more than one of each type of userequipment device but only one of each is shown in FIG. 7 to avoidovercomplicating the drawing. In addition, each user may utilize morethan one type of user equipment device and also more than one of eachtype of user equipment device.

In some embodiments, a user equipment device (e.g., user televisionequipment 702, user computer equipment 704, wireless user communicationsdevice 706) may be referred to as a “second screen device.” For example,a second screen device may supplement content presented on a first userequipment device. The content presented on the second screen device maybe any suitable content that supplements the content presented on thefirst device. In some embodiments, the second screen device provides aninterface for adjusting settings and display preferences of the firstdevice. In some embodiments, the second screen device is configured forinteracting with other second screen devices or for interacting with asocial network. The second screen device can be located in the same roomas the first device, a different room from the first device but in thesame house or building, or in a different building from the firstdevice.

The user may also set various settings to maintain consistent mediaguidance application settings across in-home devices and remote devices.Settings include those described herein, as well as channel and programfavorites, programming preferences that the guidance applicationutilizes to make programming recommendations, display preferences, andother desirable guidance settings. For example, if a user sets a channelas a favorite on, for example, the web site www.Tivo.com on theirpersonal computer at their office, the same channel would appear as afavorite on the user's in-home devices (e.g., user television equipmentand user computer equipment) as well as the user's mobile devices, ifdesired. Therefore, changes made on one user equipment device can changethe guidance experience on another user equipment device, regardless ofwhether they are the same or a different type of user equipment device.In addition, the changes made may be based on settings input by a user,as well as user activity monitored by the guidance application.

The user equipment devices may be coupled to communications network 714.Namely, user television equipment 702, user computer equipment 704, andwireless user communications device 706 are coupled to communicationsnetwork 714 via communications paths 708, 710, and 712, respectively.Communications network 714 may be one or more networks including theInternet, a mobile phone network, mobile voice or data network (e.g., a4G or LTE network), cable network, public switched telephone network, orother types of communications network or combinations of communicationsnetworks. Paths 708, 710, and 712 may separately or together include oneor more communications paths, such as, a satellite path, a fiber-opticpath, a cable path, a path that supports Internet communications (e.g.,IPTV), free-space connections (e.g., for broadcast or other wirelesssignals), or any other suitable wired or wireless communications path orcombination of such paths. Path 712 is drawn with dotted lines toindicate that in the exemplary embodiment shown in FIG. 7 it is awireless path and paths 708 and 710 are drawn as solid lines to indicatethey are wired paths (although these paths may be wireless paths, ifdesired). Communications with the user equipment devices may be providedby one or more of these communications paths, but are shown as a singlepath in FIG. 7 to avoid overcomplicating the drawing.

Although communications paths are not drawn between user equipmentdevices, these devices may communicate directly with each other viacommunication paths, such as those described above in connection withpaths 708, 710, and 712, as well as other short-range point-to-pointcommunication paths, such as USB cables, IEEE 1394 cables, wirelesspaths (e.g., Bluetooth, infrared, IEEE 802-11x, etc.), or othershort-range communication via wired or wireless paths. BLUETOOTH is acertification mark owned by Bluetooth SIG, INC. The user equipmentdevices may also communicate with each other directly through anindirect path via communications network 714.

System 700 includes content source 716 and media guidance data source718 coupled to communications network 714 via communication paths 720and 722, respectively. Paths 720 and 722 may include any of thecommunication paths described above in connection with paths 708, 710,and 712. Communications with the content source 716 and media guidancedata source 718 may be exchanged over one or more communications paths,but are shown as a single path in FIG. 7 to avoid overcomplicating thedrawing. In addition, there may be more than one of each of contentsource 716 and media guidance data source 718, but only one of each isshown in FIG. 7 to avoid overcomplicating the drawing. (The differenttypes of each of these sources are discussed below.) If desired, contentsource 716 and media guidance data source 718 may be integrated as onesource device. Although communications between sources 716 and 718 withuser equipment devices 702, 704, and 706 are shown as throughcommunications network 714, in some embodiments, sources 716 and 718 maycommunicate directly with user equipment devices 702, 704, and 706 viacommunication paths (not shown) such as those described above inconnection with paths 708, 710, and 712.

Content source 716 may include one or more types of content distributionequipment including a television distribution facility, cable systemheadend, satellite distribution facility, programming sources (e.g.,television broadcasters, such as NBC, ABC, HBO, etc.), intermediatedistribution facilities and/or servers, Internet providers, on-demandmedia servers, and other content providers. NBC is a trademark owned bythe National Broadcasting Company, Inc., ABC is a trademark owned by theAmerican Broadcasting Company, Inc., and HBO is a trademark owned by theHome Box Office, Inc. Content source 716 may be the originator ofcontent (e.g., a television broadcaster, a Webcast provider, etc.) ormay not be the originator of content (e.g., an on-demand contentprovider, an Internet provider of content of broadcast programs fordownloading, etc.). Content source 716 may include cable sources,satellite providers, on-demand providers, Internet providers,over-the-top content providers, or other providers of content. Contentsource 716 may also include a remote media server used to storedifferent types of content (including video content selected by a user),in a location remote from any of the user equipment devices. Systems andmethods for remote storage of content, and providing remotely storedcontent to user equipment are discussed in greater detail in connectionwith Ellis et al., U.S. Pat. No. 7,761,892, issued Jul. 20, 2010, whichis hereby incorporated by reference herein in its entirety.

Media guidance data source 718 may provide media guidance data, such asthe media guidance data described above. Media guidance data may beprovided to the user equipment devices using any suitable approach. Insome embodiments, the guidance application may be a stand-aloneinteractive television program guide that receives program guide datavia a data feed (e.g., a continuous feed or trickle feed). Programschedule data and other guidance data may be provided to the userequipment on a television channel sideband, using an in-band digitalsignal, using an out-of-band digital signal, or by any other suitabledata transmission technique. Program schedule data and other mediaguidance data may be provided to user equipment on multiple analog ordigital television channels.

In some embodiments, guidance data from media guidance data source 718may be provided to users' equipment using a client-server approach. Forexample, a user equipment device may pull media guidance data from aserver, or a server may push media guidance data to a user equipmentdevice. In some embodiments, a guidance application client residing onthe user's equipment may initiate sessions with source 718 to obtainguidance data when needed, e.g., when the guidance data is out of dateor when the user equipment device receives a request from the user toreceive data. Media guidance may be provided to the user equipment withany suitable frequency (e.g., continuously, daily, a user-specifiedperiod of time, a system-specified period of time, in response to arequest from user equipment, etc.). Media guidance data source 718 mayprovide user equipment devices 702, 704, and 706 the media guidanceapplication itself or software updates for the media guidanceapplication.

In some embodiments, the media guidance data may include viewer data.For example, the viewer data may include current and/or historical useractivity information (e.g., what content the user typically watches,what times of day the user watches content, whether the user interactswith a social network, at what times the user interacts with a socialnetwork to post information, what types of content the user typicallywatches (e.g., pay TV or free TV), mood, brain activity information,etc.). The media guidance data may also include subscription data. Forexample, the subscription data may identify to which sources or servicesa given user subscribes and/or to which sources or services the givenuser has previously subscribed but later terminated access (e.g.,whether the user subscribes to premium channels, whether the user hasadded a premium level of services, whether the user has increasedInternet speed). In some embodiments, the viewer data and/or thesubscription data may identify patterns of a given user for a period ofmore than one year. The media guidance data may include a model (e.g., asurvivor model) used for generating a score that indicates a likelihooda given user will terminate access to a service/source. For example, themedia guidance application may process the viewer data with thesubscription data using the model to generate a value or score thatindicates a likelihood of whether the given user will terminate accessto a particular service or source. In particular, a higher score mayindicate a higher level of confidence that the user will terminateaccess to a particular service or source. Based on the score, the mediaguidance application may generate promotions that entice the user tokeep the particular service or source indicated by the score as one towhich the user will likely terminate access.

Media guidance applications may be, for example, stand-aloneapplications implemented on user equipment devices. For example, themedia guidance application may be implemented as software or a set ofexecutable instructions which may be stored in storage 608, and executedby control circuitry 604 of a user equipment device 600. In someembodiments, media guidance applications may be client-serverapplications where only a client application resides on the userequipment device, and server application resides on a remote server. Forexample, media guidance applications may be implemented partially as aclient application on control circuitry 604 of user equipment device 600and partially on a remote server as a server application (e.g., mediaguidance data source 718) running on control circuitry of the remoteserver. When executed by control circuitry of the remote server (such asmedia guidance data source 718), the media guidance application mayinstruct the control circuitry to generate the guidance applicationdisplays and transmit the generated displays to the user equipmentdevices. The server application may instruct the control circuitry ofthe media guidance data source 718 to transmit data for storage on theuser equipment. The client application may instruct control circuitry ofthe receiving user equipment to generate the guidance applicationdisplays.

Content and/or media guidance data delivered to user equipment devices702, 704, and 706 may be over-the-top (OTT) content. OTT contentdelivery allows Internet-enabled user devices, including any userequipment device described above, to receive content that is transferredover the Internet, including any content described above, in addition tocontent received over cable or satellite connections. OTT content isdelivered via an Internet connection provided by an Internet serviceprovider (ISP), but a third party distributes the content. The ISP maynot be responsible for the viewing abilities, copyrights, orredistribution of the content, and may only transfer IP packets providedby the OTT content provider. Examples of OTT content providers includeYOUTUBE, NETFLIX, and HULU, which provide audio and video via IPpackets. Youtube is a trademark owned by Google Inc., Netflix is atrademark owned by Netflix Inc., and Hulu is a trademark owned by Hulu,LLC. OTT content providers may additionally or alternatively providemedia guidance data described above. In addition to content and/or mediaguidance data, providers of OTT content can distribute media guidanceapplications (e.g., web-based applications or cloud-based applications),or the content can be displayed by media guidance applications stored onthe user equipment device.

Media guidance system 700 is intended to illustrate a number ofapproaches, or network configurations, by which user equipment devicesand sources of content and guidance data may communicate with each otherfor the purpose of accessing content and providing media guidance. Theembodiments described herein may be applied in any one or a subset ofthese approaches, or in a system employing other approaches fordelivering content and providing media guidance. The following fourapproaches provide specific illustrations of the generalized example ofFIG. 7.

In one approach, user equipment devices may communicate with each otherwithin a home network. User equipment devices can communicate with eachother directly via short-range point-to-point communication schemesdescribed above, via indirect paths through a hub or other similardevice provided on a home network, or via communications network 714.Each of the multiple individuals in a single home may operate differentuser equipment devices on the home network. As a result, it may bedesirable for various media guidance information or settings to becommunicated between the different user equipment devices. For example,it may be desirable for users to maintain consistent media guidanceapplication settings on different user equipment devices within a homenetwork, as described in greater detail in Ellis et al., U.S. PatentPublication No. 2005/0251827, filed Jul. 11, 2005. Different types ofuser equipment devices in a home network may also communicate with eachother to transmit content. For example, a user may transmit content fromuser computer equipment to a portable video player or portable musicplayer.

In a second approach, users may have multiple types of user equipment bywhich they access content and obtain media guidance. For example, someusers may have home networks that are accessed by in-home and mobiledevices. Users may control in-home devices via a media guidanceapplication implemented on a remote device. For example, users mayaccess an online media guidance application on a website via a personalcomputer at their office, or a mobile device such as a PDA orweb-enabled mobile telephone. The user may set various settings (e.g.,recordings, reminders, or other settings) on the online guidanceapplication to control the user's in-home equipment. The online guidemay control the user's equipment directly, or by communicating with amedia guidance application on the user's in-home equipment. Varioussystems and methods for user equipment devices communicating, where theuser equipment devices are in locations remote from each other, isdiscussed in, for example, Ellis et al., U.S. Pat. No. 8,046,801, issuedOct. 25, 2011, which is hereby incorporated by reference herein in itsentirety.

In a third approach, users of user equipment devices inside and outsidea home can use their media guidance application to communicate directlywith content source 716 to access content. Specifically, within a home,users of user television equipment 702 and user computer equipment 704may access the media guidance application to navigate among and locatedesirable content. Users may also access the media guidance applicationoutside of the home using wireless user communications devices 706 tonavigate among and locate desirable content.

In a fourth approach, user equipment devices may operate in a cloudcomputing environment to access cloud services. In a cloud computingenvironment, various types of computing services for content sharing,storage or distribution (e.g., video sharing sites or social networkingsites) are provided by a collection of network-accessible computing andstorage resources, referred to as “the cloud.” For example, the cloudcan include a collection of server computing devices, which may belocated centrally or at distributed locations, that provide cloud-basedservices to various types of users and devices connected via a networksuch as the Internet via communications network 714. These cloudresources may include one or more content sources 716 and one or moremedia guidance data sources 718. In addition or in the alternative, theremote computing sites may include other user equipment devices, such asuser television equipment 702, user computer equipment 704, and wirelessuser communications device 706. For example, the other user equipmentdevices may provide access to a stored copy of a video or a streamedvideo. In such embodiments, user equipment devices may operate in apeer-to-peer manner without communicating with a central server.

The cloud provides access to services, such as content storage, contentsharing, or social networking services, among other examples, as well asaccess to any content described above, for user equipment devices.Services can be provided in the cloud through cloud computing serviceproviders, or through other providers of online services. For example,the cloud-based services can include a content storage service, acontent sharing site, a social networking site, or other services viawhich user-sourced content is distributed for viewing by others onconnected devices. These cloud-based services may allow a user equipmentdevice to store content to the cloud and to receive content from thecloud rather than storing content locally and accessing locally-storedcontent.

A user may use various content capture devices, such as camcorders,digital cameras with video mode, audio recorders, mobile phones, andhandheld computing devices, to record content. The user can uploadcontent to a content storage service on the cloud either directly, forexample, from user computer equipment 704 or wireless usercommunications device 706 having content capture feature. Alternatively,the user can first transfer the content to a user equipment device, suchas user computer equipment 704. The user equipment device storing thecontent uploads the content to the cloud using a data transmissionservice on communications network 714. In some embodiments, the userequipment device itself is a cloud resource, and other user equipmentdevices can access the content directly from the user equipment deviceon which the user stored the content.

Cloud resources may be accessed by a user equipment device using, forexample, a web browser, a media guidance application, a desktopapplication, a mobile application, and/or any combination of accessapplications of the same. The user equipment device may be a cloudclient that relies on cloud computing for application delivery, or theuser equipment device may have some functionality without access tocloud resources. For example, some applications running on the userequipment device may be cloud applications, i.e., applications deliveredas a service over the Internet, while other applications may be storedand run on the user equipment device. In some embodiments, a user devicemay receive content from multiple cloud resources simultaneously. Forexample, a user device can stream audio from one cloud resource whiledownloading content from a second cloud resource. Or a user device candownload content from multiple cloud resources for more efficientdownloading. In some embodiments, user equipment devices can use cloudresources for processing operations such as the processing operationsperformed by processing circuitry described in relation to FIG. 6.

As referred herein, the term “in response to” refers to initiated as aresult of. For example, a first action being performed in response to asecond action may include interstitial steps between the first actionand the second action. As referred herein, the term “directly inresponse to” refers to caused by. For example, a first action beingperformed directly in response to a second action may not includeinterstitial steps between the first action and the second action.

FIG. 8 is a flowchart of a detailed illustrative process for modifyingvisual attributes of a second input of a second user input device tocorrespond to visual attributes of a first input of a first user inputdevice, in accordance with some embodiments of the disclosure. It shouldbe noted that process 800 or any step thereof could be performed on, orprovided by, any of the devices shown in FIGS. 6-7. For example, process800 may be executed by control circuitry 604 (FIG. 6) as instructed by amedia guidance application implemented on a user device (e.g., userequipment devices 702, 704, and/or 706 (FIG. 7)) in order to modifyvisual attributes of an input of a user input device. In addition, oneor more steps of process 800 may be incorporated into or combined withone or more steps of any other process or embodiment described herein.

At 802, the media guidance application (e.g., via control circuitry 604)receives a request, from a user, to modify a display of inputs of asecond user input device to correspond to inputs of a first user inputdevice. For example, the media guidance application may receive, e.g.,via communications network 714, a request from the user to modify thedisplay of inputs of a tablet computer device to correspond to inputbuttons of a remote control device.

At 804, the media guidance application (e.g., via control circuitry 604)retrieves a first identifier of the first user input device and a secondidentifier of the second user input device. For example, the mediaguidance application may retrieve, e.g., from storage 608 or mediaguidance data source 718, a first hexadecimal code identifying the firstuser input device as the first identifier and a second hexadecimal codeidentifying the second user input device as the second identifier.

At 806, the media guidance application (e.g., via control circuitry 604)inputs the first identifier into a first database to determine a firstset of device functionalities of the first user input device and a firstinput map of the first user input device, wherein the first input mapcomprises visual attributes of the inputs of the first user inputdevice. For example, the media guidance application may input the firstidentifier of the remote control device into a first database todetermine a set of device functionalities and a first input map of theremote control device. As described above, the first input map maycomprise a data structure comprising an identifier, display coordinates,visual attributes, and a corresponding device functionality for eachinput of the first user input device. For example, the first input mapof the remote control device may include a device identifier such as thefirst identifier, display coordinates representing the spatialpositioning of inputs of the remote control device, visual attributes ofthe inputs of the remote control device, and a mapping of each input toa corresponding device functionality.

At 808, the media guidance application (e.g., via control circuitry 604)inputs the second identifier into a second database to determine asecond set of device functionalities of the second user input device anda second input map of the second user input device, wherein the secondinput map comprises visual attributes of the inputs of the second userdevice. For example, the media guidance application may input the secondidentifier of the tablet computer device into a second database todetermine a set of device functionalities and a second input map of thetablet computer device. As described above, the second input maycomprise a data structure comprising an identifier, display coordinates,visual attributes, and a corresponding device functionality for eachinput of the second user input device. For example, the second input mapof the tablet computer device may include a device identifier such asthe second identifier, display coordinates representing the spatialpositioning of inputs of the tablet computer device, visual attributesof the inputs of the tablet computer device, and a mapping of each inputto a corresponding device functionality.

At 810, the media guidance application (e.g., via control circuitry 604)compares the first set of device functionalities with the second set ofdevice functionalities. For example, the media guidance application maycompare the set of device functionalities of the remote controldevice—power, play, pause, and stop—with the set of devicefunctionalities of the tablet computer device—power, play, pause, stop,rewind, and fast-forward.

At 812, the media guidance application (e.g., via control circuitry 604)determines a set of common device functionalities, based on thecomparing. For example, the media guidance device may determine, basedon comparing the set of device functionalities of the remote controldevice with the set of device functionalities of the tablet computerdevice, a set of common device functionalities including power, play,pause, and stop.

At 814, the media guidance application (e.g., via control circuitry 604)retrieves a first input of the first user input device that correspondsto a first device functionality in the set of common devicefunctionalities and a second input of the second user input device thatcorresponds to the first device functionality in the set of commondevice functionalities. For example, the media guidance application mayretrieve a first input of the remote control device that corresponds tothe first power device functionality and a second input of the tabletcomputer device that corresponds to the first power devicefunctionality.

At 816, the media guidance application (e.g., via control circuitry 604)modifies visual attributes of the second input of the second user inputdevice to correspond to visual attributes of the first input of thefirst user input device. For example, the media guidance application maymodify the shape and font face of the input corresponding to the firstpower device functionality of the tablet computer device to correspondto the shape and font face of the input corresponding to the first powerdevice functionality of the remote control device.

It is contemplated that the steps or descriptions of FIG. 8 may be usedwith any other embodiment of this disclosure. In addition, the steps anddescriptions described in relation to FIG. 8 may be done in alternativeorders or in parallel to further the purposes of this disclosure. Forexample, each of these steps may be performed in any order or inparallel or substantially simultaneously to reduce lag or increase thespeed of the system or method. Any of these steps may also be skipped oromitted from the process. Furthermore, it should be noted that any ofthe devices or equipment discussed in relation to FIGS. 6-7 could beused to perform one or more of the steps in FIG. 8.

FIG. 9 is a flowchart of a detailed illustrative process for comparingthe first set of device functionalities with the second set of devicefunctionalities, in accordance with some embodiments of the disclosure.It should be noted that process 900 or any step thereof could beperformed on, or provided by, any of the devices shown in FIGS. 6-7. Forexample, process 900 may be executed by control circuitry 604 (FIG. 4)as instructed by a media guidance application implemented on a userdevice (e.g., user equipment devices 702, 704, and/or 706 (FIG. 7)) inorder to compare the sets of device functionalities. In addition, one ormore steps of process 900 may be incorporated into or combined with oneor more steps of any other process or embodiment described herein.

At 902, the media guidance application (e.g., via control circuitry 604)begins a subroutine for comparing the first set of devicefunctionalities with the second set of device functionalities.

At 904, the media guidance application (e.g., via control circuitry 604)makes a determination as to whether there is a previously unselectedfirst device functionality in the first set. For example, the mediaguidance data system may use an iterator to iterate through each firstdevice functionality, thereby selecting each first device functionalityexactly once. The media guidance application may determine that there isa previously unselected first device functionality in the first set ifthe iterator is pointing to a valid first device functionality and not,for example, a null pointer. In response to determining that there is apreviously unselected first device functionality in the first set,process 900 proceeds to 906. Otherwise, process 900 proceeds to 918.

At 906, the media guidance application (e.g., via control circuitry 604)selects the previously unselected first device functionality. Forexample, the media guidance application may select a first play devicefunctionality as the previously unselected first device functionality.

At 908, the media guidance application (e.g., via control circuitry 604)makes a determination as to whether there is a second devicefunctionality that has not yet been compared to the selected firstdevice functionality. For example, the media guidance system may use asecond iterator to iterate through each second device functionality foreach first device functionality selection, thereby selecting each seconddevice functionality exactly once for each first device functionalityselection. In response to determining that there is a second devicefunctionality that has not yet been compared to the selected firstdevice functionality, process 900 proceeds to 910. Otherwise, process900 proceeds to 904.

At 910, in response to determining that there is a second devicefunctionality that has not yet been compared to the selected firstdevice functionality, the media guidance application (e.g., via controlcircuitry 604) selects the second device functionality that has not yetbeen compared to the selected first device functionality. For example,the media guidance application may, in response to determining that asecond play device functionality has not yet been compared to the firstplay device functionality, select the second play device functionality.

At 912, the media guidance application (e.g., via control circuitry 604)compares the selected first device functionality and the selected seconddevice functionality. For example, the media guidance application maycompare the first play device functionality with the second play devicefunctionality.

At 914, the media guidance application (e.g., via control circuitry 604)makes a determination as to whether the selected first devicefunctionality matches the selected second device functionality. Forexample, the media guidance application may determine whether, for agiven user device (e.g., user computer equipment 704 or wireless usercommunications device 706) at a given state (e.g., a “paused” state),where the given user device is associated with both the first and seconduser input devices (e.g., the remote control device and the tabletcomputer device), executing the first play device functionality (e.g.,of the remote control device) would result in the same output state(e.g., a “playback” state) as executing the second play devicefunctionality (e.g., of the tablet computer device) would. In responseto determining that the selected first device functionality matches theselected second device functionality, process 900 proceeds to 916.Otherwise, process 900 proceeds to 908.

At 916, the media guidance application (e.g., via control circuitry 604)adds the selected first device functionality to the set of common devicefunctionalities. For example, in response to determining that the firstplay device functionality matches the second play device functionality,the first play device functionality is added to the set of common devicefunctionalities. In another example, a unique identifier that representsboth the selected first device functionality and the selected seconddevice functionality may be added to the set of common devicefunctionalities. For example, if the first device functionality of thefirst user input device is a “jump” command and the second devicefunctionality of the second user input device is a “back” command, andthe media guidance application determines via comparing the devicefunctionalities that the first device functionality matches the seconddevice functionality, the media guidance application may add a uniqueidentifier that matches both the “jump” command of the first user inputdevice and the “back” command of the second user input device to the setof common device functionalities. The unique identifier may be, forexample, an alphanumeric string that is associated with the transitionfrom a first device state (i.e., of the user equipment device associatedwith the user input device) to a second device state.

At 918, process 900 ends.

It is contemplated that the steps or descriptions of FIG. 9 may be usedwith any other embodiment of this disclosure. In addition, the steps anddescriptions described in relation to FIG. 9 may be done in alternativeorders or in parallel to further the purposes of this disclosure. Forexample, each of these steps may be performed in any order or inparallel or substantially simultaneously to reduce lag or increase thespeed of the system or method. Any of these steps may also be skipped oromitted from the process. Furthermore, it should be noted that any ofthe devices or equipment discussed in relation to FIGS. 6-7 could beused to perform one or more of the steps in FIG. 9.

FIG. 10 is a flowchart of a detailed illustrative process for receiving,from the user, the request to modify the display of inputs of the seconduser input device to correspond to inputs of the first user inputdevice, in accordance with some embodiments of the disclosure. It shouldbe noted that process 1000 or any step thereof could be performed on, orprovided by, any of the devices shown in FIGS. 6-7. For example, process1000 may be executed by control circuitry 604 (FIG. 6) as instructed bya media guidance application implemented on a user device (e.g., userequipment devices 702, 704, and/or 706 (FIG. 7)) in order to receive theuser request. In addition, one or more steps of process 1000 may beincorporated into or combined with one or more steps of any otherprocess or embodiment described herein.

At 1002, the media guidance application (e.g., via control circuitry604) begins a subroutine for receiving, from the user, the request tomodify the display of inputs of the second user input device tocorrespond to inputs of the first user input device.

At 1004, the media guidance application (e.g., via control circuitry604) receives a request, from the user, to modify the display of inputsof the second user input device, wherein the second user input device isassociated with a second user equipment device. For example, the mediaguidance application may receive a request (e.g., via communicationsnetwork 514) from the user to modify the display of inputs of a tabletcomputer device to correspond to input buttons of a remote controldevice.

At 1006, the media guidance application (e.g., via control circuitry604) retrieves a user profile comprising a listing of user input devicesassociated with the user. For example, the media guidance applicationmay retrieve a user profile comprising a listing of user input devicesassociated with the user. For example, the user profile may list aremote control device with associated timestamp T1 and usage amount U1,a tablet computer device with timestamp T2 and usage amount U2, and amobile device with timestamp T3 and usage amount U3, where T1 is earlierthan T2 and T2 is earlier than T3, and U1 is greater than U2 and U2 isgreater than U3.

At 1008, the media guidance application (e.g., via control circuitry604) makes a determination as to whether the listing of user inputdevices comprises a timestamp of usage for each user input device. Forexample, the listing of user input devices may comprise a data structurethat has a field for each user input device and a corresponding fieldfor a timestamp of usage for the user input device. The media guidanceapplication may iterate through and check the value of each timestampfield for each user input device and, if all timestamp fields arenon-empty or not null, the media guidance application may determine thatthe listing of user input devices comprises a timestamp of usage foreach user input device. If it is determined that the listing of userinput devices comprises a timestamp of usage for each user input device,process 1000 proceeds to 1010. Otherwise, process 1000 proceeds to 1012.

At 1010, the media guidance application (e.g., via control circuitry604) selects the first user input device from the listing, wherein thetimestamp of the first user input device is earlier than the timestampof the second user input device, and wherein the first user input deviceis associated with a first user equipment device. For example, if thesecond user input device is the tablet computer device (withcorresponding timestamp T2), the media guidance application may selectthe remote control device with corresponding timestamp T1, where T1 isearlier than T2, as the first user input device.

At 1012, the media guidance application (e.g., via control circuitry604) makes a determination as to whether the listing of user inputdevices comprises a usage amount for each user input device. Forexample, the listing of user input devices may comprise a data structurethat has a field for each user input device and a corresponding fieldfor a usage amount for the user input device. The media guidanceapplication may iterate through and check the value of each usage amountfield for each user input device and, if all usage amount fields arenon-empty or not null, the media guidance application may determine thatthe listing of user input devices comprises a usage amount for each userinput device. In response to determining that the listing of user inputdevices comprises a usage amount for each user input device, process1000 proceeds to 1014. Otherwise, process 1000 proceeds to 1016.

At 1014, the media guidance application (e.g., via control circuitry604) selects the first user input device from the listing, wherein theusage amount of the first user input device is greater than the usageamount of the second user input device, and wherein the first user inputdevice is associated with a first user equipment device. For example, ifthe second user input device is the tablet computer device (withcorresponding usage amount U2), the media guidance application mayselect the mobile device with corresponding usage amount U1, where U1 isgreater than U2, as the first user input device.

At 1016, process 1000 ends.

It is contemplated that the steps or descriptions of FIG. 10 may be usedwith any other embodiment of this disclosure. In addition, the steps anddescriptions described in relation to FIG. 10 may be done in alternativeorders or in parallel to further the purposes of this disclosure. Forexample, each of these steps may be performed in any order or inparallel or substantially simultaneously to reduce lag or increase thespeed of the system or method. Any of these steps may also be skipped oromitted from the process. Furthermore, it should be noted that any ofthe devices or equipment discussed in relation to FIGS. 6-7 could beused to perform one or more of the steps in FIG. 10.

FIG. 11 is a flowchart of a detailed illustrative process for modifyingvisual attributes of an input with a given device functionality tocorrespond to visual attributes of an input with a different devicefunctionality, in accordance with some embodiments of the disclosure. Itshould be noted that process 1100 or any step thereof could be performedon, or provided by, any of the devices shown in FIGS. 6-7. For example,process 1100 may be executed by control circuitry 604 (FIG. 6) asinstructed by a media guidance application implemented on a user device(e.g., user equipment devices 702, 704, and/or 706 (FIG. 7)) in order tomodify visual attributes of an input. In addition, one or more steps ofprocess 1100 may be incorporated into or combined with one or more stepsof any other process or embodiment described herein.

At 1102, the media guidance application (e.g., via control circuitry604) begins a subroutine for modifying visual attributes of an inputwith a given device functionality to correspond to visual attributes ofan input with a different device functionality.

At 1104, the media guidance application (e.g., via control circuitry604) determines an exclusive set of device functionalities that are inthe second set of device functionalities and not in the first set ofdevice functionalities. For example, if the first set of devicefunctionalities includes power, play, pause, and stop, and the secondset of device functionalities includes power, play, pause, stop, rewind,and fast-forward, the media guidance application may determine theexclusive set of device functionalities that are in the second set andnot the first set to include the rewind and fast-forward devicefunctionalities.

At 1106, the media guidance application (e.g., via control circuitry604) retrieves a third input of the second user input device thatcorresponds to a third device functionality in the exclusive set ofdevice functionalities. For example, the media guidance application mayretrieve, from the exclusive set of device functionalities (e.g., fromstorage 408), a third input of the tablet computer device thatcorresponds to the rewind device functionality.

At 1108, the media guidance application (e.g., via control circuitry604) modifies visual attributes of the third input of the second userinput device to correspond to visual attributes of the first input ofthe first user input device. For example, the media guidance applicationmay modify the size and color scheme of the input of the tablet computerdevice that corresponds to the rewind device functionality to correspondto the size and color scheme of the input of the remote control devicethat corresponds to, for example, a play device functionality.

It is contemplated that the steps or descriptions of FIG. 11 may be usedwith any other embodiment of this disclosure. In addition, the steps anddescriptions described in relation to FIG. 11 may be done in alternativeorders or in parallel to further the purposes of this disclosure. Forexample, each of these steps may be performed in any order or inparallel or substantially simultaneously to reduce lag or increase thespeed of the system or method. Any of these steps may also be skipped oromitted from the process. Furthermore, it should be noted that any ofthe devices or equipment discussed in relation to FIGS. 6-7 could beused to perform one or more of the steps in FIG. 11.

What is claimed is:
 1. A method for coordinating device functionalitiesbetween devices, the method comprising: determining a first plurality offunctionalities of a first user input device; identifying a firstplurality of visual attributes corresponding to the first plurality offunctionalities; determining a second plurality of functionalities of asecond user input device; determining whether a first functionality ofthe first plurality of functionalities matches a second functionality ofthe second plurality of functionalities; and in response to determiningthat the first functionality matches the second functionality:generating, for display on the second user input device, a first visualattribute of the first plurality of visual attributes, wherein: thefirst visual attribute corresponds to the first functionality; and thefirst visual attribute replaces a second visual attribute correspondingto the second functionality on the second user input device.
 2. Themethod of claim 1, further comprising: receiving, from a user, a requestto modify a second plurality of visual attributes of the second userinput device; retrieving a user profile comprising a listing of userinput devices associated with the user, wherein the listing comprises adevice identifier and timestamp of usage for each user input device; andselecting, from the listing, the first user input device, wherein thetimestamp of the first user input device is earlier than the timestampof the second user input device.
 3. The method of claim 1, furthercomprising: receiving, from a user, a request to modify a secondplurality of visual attributes of the second user input device;retrieving a user profile comprising a listing of user input devicesassociated with the user, wherein the listing comprises a deviceidentifier and usage amount for each user input device; and selecting,from the listing, the first user input device, wherein the usage amountof the first user input device is greater than the usage amount of thesecond user input device.
 4. The method of claim 1, wherein determiningthe first plurality of functionalities of the first user input devicecomprises: identifying a first identifier of the first user inputdevice; inputting the first identifier into a first database comprisingdevice functionalities and input maps of the first user input device;and determining, based on the first database, a first input map of thefirst user input device, wherein the first input map comprises the firstplurality of visual attributes of the first plurality of functionalitiesof the first user input device.
 5. The method of claim 1, wherein: thefirst visual attribute comprises at least one of a group of a firstshape, a first color scheme, a first size, a first font face, a firstspatial position, or a first style identifier; and the second visualattribute comprises at least one of a group of a second shape, a secondcolor scheme, a second size, a second font face, a second spatialposition, or a second style identifier.
 6. The method of claim 1,wherein determining that the first functionality of the first pluralityof functionalities matches the second functionality of the secondplurality of functionalities comprises: determining that executing thefirst functionality on the first user input device would result in asame output state as executing the second functionality on the seconduser input device.
 7. The method of claim 6, further comprising, addingthe first functionality to a plurality of shared functionalities.
 8. Themethod of claim 1, wherein determining whether the first functionalityof the first plurality of functionalities matches the secondfunctionality of the second plurality of functionalities comprises:comparing the first plurality of functionalities with the secondplurality of functionalities; and determining, based on the comparing, aplurality of shared functionalities.
 9. The method of claim 1, furthercomprising, in response to determining that the first functionalitymatches the second functionality: retrieving a first input of the firstuser input device that corresponds to the first functionality and asecond input of the second user input device that corresponds to thefirst functionality; and modifying the second visual attribute of thesecond input of the second user input device to correspond to the firstvisual attribute of the first input of the first user input device. 10.The method of claim 1, further comprising: in response to determiningthat the first functionality does not match the second functionality:excluding the first functionality from a plurality of sharedfunctionalities; and excluding a first visual attribute of the firstplurality of visual attributes corresponding to the first functionalityfrom being generated for display on the second user input device.
 11. Asystem for coordinating device functionalities between devices, thesystem comprising: communications circuitry; and control circuitryconfigured to: determine a first plurality of functionalities of a firstuser input device; identify a first plurality of visual attributescorresponding to the first plurality of functionalities; determine asecond plurality of functionalities of a second user input device;determine whether a first functionality of the first plurality offunctionalities matches a second functionality of the second pluralityof functionalities; and in response to determining that the firstfunctionality matches the second functionality: generate, for display onthe second user input device, a first visual attribute of the firstplurality of visual attributes, wherein: the first visual attributecorresponds to the first functionality; and the first visual attributereplaces a second visual attribute corresponding to the secondfunctionality on the second user input device.
 12. The system of claim11, wherein the control circuitry is further configured to: receive,from a user, a request to modify a second plurality of visual attributesof the second user input device; retrieve a user profile comprising alisting of user input devices associated with the user, wherein thelisting comprises a device identifier and timestamp of usage for eachuser input device; and select, from the listing, the first user inputdevice, wherein the timestamp of the first user input device is earlierthan the timestamp of the second user input device.
 13. The system ofclaim 11, wherein the control circuitry is further configured to:receive, from a user, a request to modify a second plurality of visualattributes of the second user input device; retrieve a user profilecomprising a listing of user input devices associated with the user,wherein the listing comprises a device identifier and usage amount foreach user input device; and select, from the listing, the first userinput device, wherein the usage amount of the first user input device isgreater than the usage amount of the second user input device.
 14. Thesystem of claim 11, wherein the control circuitry is further configuredto determine the first plurality of functionalities of the first userinput device by: identifying a first identifier of the first user inputdevice; inputting the first identifier into a first database comprisingdevice functionalities and input maps of the first user input device;and determining, based on the first database, a first input map of thefirst user input device, wherein the first input map comprises the firstplurality of visual attributes of the first plurality of functionalitiesof the first user input device.
 15. The system of claim 11, wherein: thefirst visual attribute comprises at least one of a group of a firstshape, a first color scheme, a first size, a first font face, a firstspatial position, or a first style identifier; and the second visualattribute comprises at least one of a group of a second shape, a secondcolor scheme, a second size, a second font face, a second spatialposition, or a second style identifier.
 16. The system of claim 11,wherein the control circuitry is configured to determine that the firstfunctionality of the first plurality of functionalities matches thesecond functionality of the second plurality of functionalities by:determining that executing the first functionality on the first userinput device would result in a same output state as executing the secondfunctionality on the second user input device.
 17. The system of claim16, wherein the control circuitry is further configured to add the firstfunctionality to a plurality of shared functionalities.
 18. The systemof claim 11, wherein the control circuitry is configured to determinewhether the first functionality of the first plurality offunctionalities matches the second functionality of the second pluralityof functionalities by: comparing the first plurality of functionalitieswith the second plurality of functionalities; and determining, based onthe comparing, a plurality of shared functionalities.
 19. The system ofclaim 11, wherein, the control circuitry is further configured to, inresponse to determining that the first functionality matches the secondfunctionality: retrieve a first input of the first user input devicethat corresponds to the first functionality and a second input of thesecond user input device that corresponds to the first functionality;and modify the second visual attribute of the second input of the seconduser input device to correspond to the first visual attribute of thefirst input of the first user input device.
 20. The system of claim 11,wherein the control circuitry is further configured to: in response todetermining that the first functionality does not match the secondfunctionality: exclude the first functionality from a plurality ofshared functionalities; and exclude a first visual attribute of thefirst plurality of visual attributes corresponding to the firstfunctionality from being generated for display on the second user inputdevice.